package com.code.generator.code;

import com.code.generator.context.GeneratorContext;

import java.io.IOException;

public interface CodeGenerateProvider<T extends GeneratorContext> {

    void generatePersistence(T context) throws IOException;

    void generateModel(T context) throws IOException;

    void generateFilter(T context) throws IOException;

    void generateEntity(T context) throws IOException;

    void generateMapper(T context) throws IOException;

    void generateMapperXml(T context) throws IOException;

    void generateRepository(T context) throws IOException;

    void generateRepositoryImpl(T context) throws IOException;

    void generateService(T context) throws IOException;

    void generateServiceImpl(T context) throws IOException;

    void generateRequest(T context) throws IOException;

    void generateQueryRequest(T context) throws IOException;

    void generatePaginationRequest(T context) throws IOException;

    void generateController(T context) throws IOException;

    void generateApiJs(T context) throws IOException;

    void generateIndex(T context) throws IOException;

}
